//Neal Whitworth
//Class: Class.h
//This is the header file for the class object
//Coded by Neal Whitworth
//test for new commit

#ifndef CLASS_H  
#define CLASS_H  

using namespace std;

#include <string>  
#include <iostream>  

namespace ClassNamespace{

	class Class
	{

	private:
		//all of the variables in each class object
		string department;
		int courseNumber;
		int section;
		string days;
		int start;
		int end;
		string building;
		int room;
		string instructor;
		
		bool crossListed /*= false*/;
		bool teamTaught /*= false*/;
		//end variables  

		//private functions  
		//the set function that each public setter will call  
		//I use this because it adds an extra layer of security  
		void Set(string department, int courseNumber, int section, string days, int start, int end, string building, int room, string instructor, bool crossListed, bool teamTaught);

		//end private functions  

	public:

		//public functions  
		//Constructor  
		Class(string department, int courseNumber, int section, string days, int start, int end, string building, int room, string instructor, bool crossListed, bool teamTaught);
		//end constructor 
		//Destructor
		~Class();
		//end destructor
		//begin public setters  
		//each public setter will call the private set function
		void setDepartment(string d);
		void setCourseNumber(int c);
		void setSection(int s);
		void setDays(string d);
		void setStart(int s);
		void setEnd(int e);
		void setBuilding(string b);
		void setRoom(int r);
		void setInstructor(string i);
		void setTeamTaught(); // may not be used
		void setCrossListed(); // may not be used
		//end setters  
		//begin getters
		string getDepartment();
		int getCourseNumber();
		int getSection();
		string getDays();
		int getStart();
		int getEnd();
		string getBuilding();
		int getRoom();
		string getInstructor();		
		string toString();
		bool getTeamTaught(); // may not be used
		bool getCrossListed(); // may not be used
		//end getters  
		//begin random functions  
		string IntegerToString(int x);
		bool Overlaps(Class *c);
		//end random functions  
		//end public functions  
	};
}



#endif
